package com.ruoyi.system.mapper;

import com.ruoyi.common.core.domain.zzw.TCaseInfo;
import com.ruoyi.common.core.domain.zzw.VO.RenderingDataVO;
import com.ruoyi.common.core.domain.zzw.VO.TCaseInfoListVO;
import com.ruoyi.common.core.domain.zzw.VO.byType;
import com.ruoyi.common.core.domain.zzw.VO.caseInfoAverageVO;

import java.util.List;

/**
 * 民转刑事案件详情Mapper接口
 * 
 * @author ruoyi
 * @date 2023-11-21
 */
public interface TCaseInfoMapper 
{
    /**
     * 查询民转刑事案件详情
     * 
     * @param cCaseId 民转刑事案件详情主键
     * @return 民转刑事案件详情
     */
    public TCaseInfo selectTCaseInfoByCCaseId(Long cCaseId);

    /**
     * 查询民转刑事案件详情列表
     * 
     * @param tCaseInfo 民转刑事案件详情
     * @return 民转刑事案件详情集合
     */
    public List<TCaseInfoListVO> selectTCaseInfoList(TCaseInfo tCaseInfo);

    /**
     * 新增民转刑事案件详情
     * 
     * @param tCaseInfo 民转刑事案件详情
     * @return 结果
     */
    public int insertTCaseInfo(TCaseInfo tCaseInfo);

    /**
     * 修改民转刑事案件详情
     * 
     * @param tCaseInfo 民转刑事案件详情
     * @return 结果
     */
    public int updateTCaseInfo(TCaseInfo tCaseInfo);

    /**
     * 删除民转刑事案件详情
     * 
     * @param cCaseId 民转刑事案件详情主键
     * @return 结果
     */
    public int deleteTCaseInfoByCCaseId(Long cCaseId);

    /**
     * 批量删除民转刑事案件详情
     * 
     * @param cCaseIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTCaseInfoByCCaseIds(Long[] cCaseIds);

    List<RenderingDataVO> byRegion();

    List<caseInfoAverageVO> average();

    List<byType> byType(String type);
}
